<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremoteESP8266: IRArgoACBase&lt; ARGO_PROTOCOL_T &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IRremoteESP8266
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-static-methods">Static Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#related">Related Functions</a> &#124;
<a href="classIRArgoACBase-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">IRArgoACBase&lt; ARGO_PROTOCOL_T &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Base class for handling <em>common</em> support for Argo remote protocols (functionality is shared across WREM-2 and WREM-3 IR protocols)  
 <a href="classIRArgoACBase.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="ir__Argo_8h_source.html">ir_Argo.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for IRArgoACBase&lt; ARGO_PROTOCOL_T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classIRArgoACBase__coll__graph.png" border="0" usemap="#IRArgoACBase_3_01ARGO__PROTOCOL__T_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="IRArgoACBase_3_01ARGO__PROTOCOL__T_01_4_coll__map" id="IRArgoACBase_3_01ARGO__PROTOCOL__T_01_4_coll__map">
<area shape="rect" title="Base class for handling common support for Argo remote protocols (functionality is shared across WREM..." alt="" coords="5,95,173,136"/>
<area shape="rect" href="classIRsend.html" title="Class for sending all basic IR protocols." alt="" coords="56,5,123,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a44f218a7ce7829c9e3edffa5b3e0daf2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a44f218a7ce7829c9e3edffa5b3e0daf2">IRArgoACBase</a> (const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</td></tr>
<tr class="memdesc:a44f218a7ce7829c9e3edffa5b3e0daf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class constructor.  <a href="classIRArgoACBase.html#a44f218a7ce7829c9e3edffa5b3e0daf2">More...</a><br /></td></tr>
<tr class="separator:a44f218a7ce7829c9e3edffa5b3e0daf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b7e72fd0c1624a44ad48d7fc612a54e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a9b7e72fd0c1624a44ad48d7fc612a54e">send</a> (const uint16_t repeat=<a class="el" href="IRremoteESP8266_8h.html#a9a2190c526885753c676db666e48b764">kArgoDefaultRepeat</a>)</td></tr>
<tr class="memdesc:a9b7e72fd0c1624a44ad48d7fc612a54e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send the current internal state as an IR message.  <a href="classIRArgoACBase.html#a9b7e72fd0c1624a44ad48d7fc612a54e">More...</a><br /></td></tr>
<tr class="separator:a9b7e72fd0c1624a44ad48d7fc612a54e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2d075d5088985078433dbbef25c996c"><td class="memItemLeft" align="right" valign="top">int8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ad2d075d5088985078433dbbef25c996c">calibrate</a> (void)</td></tr>
<tr class="memdesc:ad2d075d5088985078433dbbef25c996c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Run the calibration to calculate uSec timing offsets for this platform.  <a href="classIRArgoACBase.html#ad2d075d5088985078433dbbef25c996c">More...</a><br /></td></tr>
<tr class="separator:ad2d075d5088985078433dbbef25c996c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af861bd552b45798ddb4a248aa83809a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#af861bd552b45798ddb4a248aa83809a2">begin</a> (void)</td></tr>
<tr class="memdesc:af861bd552b45798ddb4a248aa83809a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set up hardware to be able to send a message.  <a href="classIRArgoACBase.html#af861bd552b45798ddb4a248aa83809a2">More...</a><br /></td></tr>
<tr class="separator:af861bd552b45798ddb4a248aa83809a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac008199e29e574b5a6b9150dc7706361"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ac008199e29e574b5a6b9150dc7706361">on</a> (void)</td></tr>
<tr class="memdesc:ac008199e29e574b5a6b9150dc7706361"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the internal state to have the power on.  <a href="classIRArgoACBase.html#ac008199e29e574b5a6b9150dc7706361">More...</a><br /></td></tr>
<tr class="separator:ac008199e29e574b5a6b9150dc7706361"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66ba764117f13d6566d2fca415388ef6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a66ba764117f13d6566d2fca415388ef6">off</a> (void)</td></tr>
<tr class="memdesc:a66ba764117f13d6566d2fca415388ef6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the internal state to have the power off.  <a href="classIRArgoACBase.html#a66ba764117f13d6566d2fca415388ef6">More...</a><br /></td></tr>
<tr class="separator:a66ba764117f13d6566d2fca415388ef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38a3fa539e464fa50a0973d1ad7ed861"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a38a3fa539e464fa50a0973d1ad7ed861">setPower</a> (const bool <a class="el" href="classIRArgoACBase.html#ac008199e29e574b5a6b9150dc7706361">on</a>)</td></tr>
<tr class="memdesc:a38a3fa539e464fa50a0973d1ad7ed861"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the internal state to have the desired power.  <a href="classIRArgoACBase.html#a38a3fa539e464fa50a0973d1ad7ed861">More...</a><br /></td></tr>
<tr class="separator:a38a3fa539e464fa50a0973d1ad7ed861"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77bd8c330ca0c5e9f0891989eca54b0d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a77bd8c330ca0c5e9f0891989eca54b0d">getPower</a> (void) const</td></tr>
<tr class="memdesc:a77bd8c330ca0c5e9f0891989eca54b0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the power setting from the internal state.  <a href="classIRArgoACBase.html#a77bd8c330ca0c5e9f0891989eca54b0d">More...</a><br /></td></tr>
<tr class="separator:a77bd8c330ca0c5e9f0891989eca54b0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a325f5ef55475147ce4c65bea7da9b8ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a325f5ef55475147ce4c65bea7da9b8ce">setTemp</a> (const uint8_t degrees)</td></tr>
<tr class="memdesc:a325f5ef55475147ce4c65bea7da9b8ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the temperature.  <a href="classIRArgoACBase.html#a325f5ef55475147ce4c65bea7da9b8ce">More...</a><br /></td></tr>
<tr class="separator:a325f5ef55475147ce4c65bea7da9b8ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ff5e543da48492ce58bf48e70b57179"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a0ff5e543da48492ce58bf48e70b57179">getTemp</a> (void) const</td></tr>
<tr class="memdesc:a0ff5e543da48492ce58bf48e70b57179"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current temperature setting.  <a href="classIRArgoACBase.html#a0ff5e543da48492ce58bf48e70b57179">More...</a><br /></td></tr>
<tr class="separator:a0ff5e543da48492ce58bf48e70b57179"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abff06405b628cf673f59f1e6826923cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#abff06405b628cf673f59f1e6826923cc">setSensorTemp</a> (const uint8_t degrees)</td></tr>
<tr class="memdesc:abff06405b628cf673f59f1e6826923cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the value for the current room temperature.  <a href="classIRArgoACBase.html#abff06405b628cf673f59f1e6826923cc">More...</a><br /></td></tr>
<tr class="separator:abff06405b628cf673f59f1e6826923cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2debcb1941be483509774d77c0899d90"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a2debcb1941be483509774d77c0899d90">getSensorTemp</a> (void) const</td></tr>
<tr class="memdesc:a2debcb1941be483509774d77c0899d90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the currently stored value for the room temperature setting.  <a href="classIRArgoACBase.html#a2debcb1941be483509774d77c0899d90">More...</a><br /></td></tr>
<tr class="separator:a2debcb1941be483509774d77c0899d90"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fc557551120c38319025182aa6139eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a9fc557551120c38319025182aa6139eb">setFan</a> (const <a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a> fan)</td></tr>
<tr class="memdesc:a9fc557551120c38319025182aa6139eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the desired fan mode (WREM3).  <a href="classIRArgoACBase.html#a9fc557551120c38319025182aa6139eb">More...</a><br /></td></tr>
<tr class="separator:a9fc557551120c38319025182aa6139eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a928291cf92822173002d481726d4a6b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a928291cf92822173002d481726d4a6b9">setFanEx</a> (const <a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a> fan)</td></tr>
<tr class="separator:a928291cf92822173002d481726d4a6b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5e89af1ed627b5b937152d797a7dbe0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#aa5e89af1ed627b5b937152d797a7dbe0">getFanEx</a> (void) const</td></tr>
<tr class="memdesc:aa5e89af1ed627b5b937152d797a7dbe0"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>-Ex</code> for backw. compat w/ <code><a class="el" href="classIRArgoAC.html" title="Supports Argo A/C SAC-WREM2 IR remote protocol.">IRArgoAC</a></code>  <a href="classIRArgoACBase.html#aa5e89af1ed627b5b937152d797a7dbe0">More...</a><br /></td></tr>
<tr class="separator:aa5e89af1ed627b5b937152d797a7dbe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9486ce2e104b66a784529fb516d7fee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ad9486ce2e104b66a784529fb516d7fee">setFlap</a> (const <a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a> flap)</td></tr>
<tr class="memdesc:ad9486ce2e104b66a784529fb516d7fee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the desired flap mode.  <a href="classIRArgoACBase.html#ad9486ce2e104b66a784529fb516d7fee">More...</a><br /></td></tr>
<tr class="separator:ad9486ce2e104b66a784529fb516d7fee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa926073e0373b432371e8565816a30f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#aa926073e0373b432371e8565816a30f9">setFlapEx</a> (const <a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a> flap)</td></tr>
<tr class="separator:aa926073e0373b432371e8565816a30f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5465ccf35143d0898ed837d39b3fde6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ad5465ccf35143d0898ed837d39b3fde6">getFlapEx</a> (void) const</td></tr>
<tr class="memdesc:ad5465ccf35143d0898ed837d39b3fde6"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>-Ex</code> for backw. compat w/ <code><a class="el" href="classIRArgoAC.html" title="Supports Argo A/C SAC-WREM2 IR remote protocol.">IRArgoAC</a></code>  <a href="classIRArgoACBase.html#ad5465ccf35143d0898ed837d39b3fde6">More...</a><br /></td></tr>
<tr class="separator:ad5465ccf35143d0898ed837d39b3fde6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8eee57c7fe2ecea762a811694b014510"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a8eee57c7fe2ecea762a811694b014510">setMode</a> (const <a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a> mode)</td></tr>
<tr class="memdesc:a8eee57c7fe2ecea762a811694b014510"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the desired operation mode.  <a href="classIRArgoACBase.html#a8eee57c7fe2ecea762a811694b014510">More...</a><br /></td></tr>
<tr class="separator:a8eee57c7fe2ecea762a811694b014510"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d514604a73f185dcac677515e4b152e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a5d514604a73f185dcac677515e4b152e">setModeEx</a> (const <a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a> mode)</td></tr>
<tr class="separator:a5d514604a73f185dcac677515e4b152e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b3a48dd4ebaef8ba73b300893213cf7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a5b3a48dd4ebaef8ba73b300893213cf7">getModeEx</a> (void) const</td></tr>
<tr class="memdesc:a5b3a48dd4ebaef8ba73b300893213cf7"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>-Ex</code> for backw. compat w/ <code><a class="el" href="classIRArgoAC.html" title="Supports Argo A/C SAC-WREM2 IR remote protocol.">IRArgoAC</a></code>  <a href="classIRArgoACBase.html#a5b3a48dd4ebaef8ba73b300893213cf7">More...</a><br /></td></tr>
<tr class="separator:a5b3a48dd4ebaef8ba73b300893213cf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb9d070353c5236ebffed7a05aa60dcc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#afb9d070353c5236ebffed7a05aa60dcc">setMax</a> (const bool <a class="el" href="classIRArgoACBase.html#ac008199e29e574b5a6b9150dc7706361">on</a>)</td></tr>
<tr class="memdesc:afb9d070353c5236ebffed7a05aa60dcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Control the current Max setting. (i.e. Turbo)  <a href="classIRArgoACBase.html#afb9d070353c5236ebffed7a05aa60dcc">More...</a><br /></td></tr>
<tr class="separator:afb9d070353c5236ebffed7a05aa60dcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0706c04b2e52a7fd848a26edc23122d6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a0706c04b2e52a7fd848a26edc23122d6">getMax</a> (void) const</td></tr>
<tr class="memdesc:a0706c04b2e52a7fd848a26edc23122d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is the Max (i.e. Turbo) setting on?  <a href="classIRArgoACBase.html#a0706c04b2e52a7fd848a26edc23122d6">More...</a><br /></td></tr>
<tr class="separator:a0706c04b2e52a7fd848a26edc23122d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac59ad816a7c77d9c6c6a30ee809ce25"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#aac59ad816a7c77d9c6c6a30ee809ce25">setNight</a> (const bool <a class="el" href="classIRArgoACBase.html#ac008199e29e574b5a6b9150dc7706361">on</a>)</td></tr>
<tr class="memdesc:aac59ad816a7c77d9c6c6a30ee809ce25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Turn on/off the Night mode. i.e. Sleep.  <a href="classIRArgoACBase.html#aac59ad816a7c77d9c6c6a30ee809ce25">More...</a><br /></td></tr>
<tr class="separator:aac59ad816a7c77d9c6c6a30ee809ce25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ea1f41b98144411d266c6b35cbda3c3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a9ea1f41b98144411d266c6b35cbda3c3">getNight</a> (void) const</td></tr>
<tr class="memdesc:a9ea1f41b98144411d266c6b35cbda3c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the status of Night mode. i.e. Sleep.  <a href="classIRArgoACBase.html#a9ea1f41b98144411d266c6b35cbda3c3">More...</a><br /></td></tr>
<tr class="separator:a9ea1f41b98144411d266c6b35cbda3c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44741b2f491d9ff5e883debb01c363ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a44741b2f491d9ff5e883debb01c363ce">setiFeel</a> (const bool <a class="el" href="classIRArgoACBase.html#ac008199e29e574b5a6b9150dc7706361">on</a>)</td></tr>
<tr class="memdesc:a44741b2f491d9ff5e883debb01c363ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Turn on/off the iFeel mode.  <a href="classIRArgoACBase.html#a44741b2f491d9ff5e883debb01c363ce">More...</a><br /></td></tr>
<tr class="separator:a44741b2f491d9ff5e883debb01c363ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a201b807436cfd2bf7d5d5818987117bd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a201b807436cfd2bf7d5d5818987117bd">getiFeel</a> (void) const</td></tr>
<tr class="memdesc:a201b807436cfd2bf7d5d5818987117bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the status of iFeel mode.  <a href="classIRArgoACBase.html#a201b807436cfd2bf7d5d5818987117bd">More...</a><br /></td></tr>
<tr class="separator:a201b807436cfd2bf7d5d5818987117bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a066c781578344b3ff41cc7a50a7e1a62"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a066c781578344b3ff41cc7a50a7e1a62">setMessageType</a> (const <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> msgType)</td></tr>
<tr class="memdesc:a066c781578344b3ff41cc7a50a7e1a62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the message type of the next command (setting this resets state)  <a href="classIRArgoACBase.html#a066c781578344b3ff41cc7a50a7e1a62">More...</a><br /></td></tr>
<tr class="separator:a066c781578344b3ff41cc7a50a7e1a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4bcb7b05cfbfe7f86a71dbc2fe26b12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ad4bcb7b05cfbfe7f86a71dbc2fe26b12">getMessageType</a> (void) const</td></tr>
<tr class="memdesc:ad4bcb7b05cfbfe7f86a71dbc2fe26b12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the message type.  <a href="classIRArgoACBase.html#ad4bcb7b05cfbfe7f86a71dbc2fe26b12">More...</a><br /></td></tr>
<tr class="separator:ad4bcb7b05cfbfe7f86a71dbc2fe26b12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9cd60a4c59cb912af796a0dd9e6ca2e"><td class="memItemLeft" align="right" valign="top">uint8_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#af9cd60a4c59cb912af796a0dd9e6ca2e">getRaw</a> (void)</td></tr>
<tr class="memdesc:af9cd60a4c59cb912af796a0dd9e6ca2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the raw state of the object, suitable to be sent with the appropriate <a class="el" href="classIRsend.html" title="Class for sending all basic IR protocols.">IRsend</a> object method.  <a href="classIRArgoACBase.html#af9cd60a4c59cb912af796a0dd9e6ca2e">More...</a><br /></td></tr>
<tr class="separator:af9cd60a4c59cb912af796a0dd9e6ca2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b975f16e1b2a11f26ba2671d69a0e78"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a6b975f16e1b2a11f26ba2671d69a0e78">getRawByteLength</a> () const</td></tr>
<tr class="memdesc:a6b975f16e1b2a11f26ba2671d69a0e78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get actual raw state byte length for the current state.  <a href="classIRArgoACBase.html#a6b975f16e1b2a11f26ba2671d69a0e78">More...</a><br /></td></tr>
<tr class="separator:a6b975f16e1b2a11f26ba2671d69a0e78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f372befde385c3e286488a7803a75e4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a6f372befde385c3e286488a7803a75e4">setRaw</a> (const uint8_t state[], const uint16_t length)</td></tr>
<tr class="memdesc:a6f372befde385c3e286488a7803a75e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the raw state of the object.  <a href="classIRArgoACBase.html#a6f372befde385c3e286488a7803a75e4">More...</a><br /></td></tr>
<tr class="separator:a6f372befde385c3e286488a7803a75e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a59c0438143973eee8649453fe4f04413"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a59c0438143973eee8649453fe4f04413">getMessageType</a> (const uint8_t state[], const uint16_t length)</td></tr>
<tr class="memdesc:a59c0438143973eee8649453fe4f04413"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get message type from raw WREM-3 data.  <a href="classIRArgoACBase.html#a59c0438143973eee8649453fe4f04413">More...</a><br /></td></tr>
<tr class="separator:a59c0438143973eee8649453fe4f04413"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f8cff3302add84acb8fb84f53f9c7c3"><td class="memItemLeft" align="right" valign="top">static uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a7f8cff3302add84acb8fb84f53f9c7c3">getStateLengthForIrMsgType</a> (<a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> type)</td></tr>
<tr class="memdesc:a7f8cff3302add84acb8fb84f53f9c7c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get byte length of raw WREM-3 message based on IR cmd type.  <a href="classIRArgoACBase.html#a7f8cff3302add84acb8fb84f53f9c7c3">More...</a><br /></td></tr>
<tr class="separator:a7f8cff3302add84acb8fb84f53f9c7c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75a13ff6c6c6ad22283d03dcf0151130"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a75a13ff6c6c6ad22283d03dcf0151130">validChecksum</a> (const uint8_t state[], const uint16_t length)</td></tr>
<tr class="memdesc:a75a13ff6c6c6ad22283d03dcf0151130"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verify the checksum is valid for a given state.  <a href="classIRArgoACBase.html#a75a13ff6c6c6ad22283d03dcf0151130">More...</a><br /></td></tr>
<tr class="separator:a75a13ff6c6c6ad22283d03dcf0151130"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a00b8a47758ab89a5d540e7ee089bef"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a7a00b8a47758ab89a5d540e7ee089bef">convertMode</a> (const <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode)</td></tr>
<tr class="memdesc:a7a00b8a47758ab89a5d540e7ee089bef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f" title="Common A/C settings for A/C operating modes.">stdAc::opmode_t</a> enum into its native mode.  <a href="classIRArgoACBase.html#a7a00b8a47758ab89a5d540e7ee089bef">More...</a><br /></td></tr>
<tr class="separator:a7a00b8a47758ab89a5d540e7ee089bef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c7b38883cd1ab3d0905be103e8dd57e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a9c7b38883cd1ab3d0905be103e8dd57e">convertFan</a> (const <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed)</td></tr>
<tr class="memdesc:a9c7b38883cd1ab3d0905be103e8dd57e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383" title="Common A/C settings for Fan Speeds.">stdAc::fanspeed_t</a> enum into it's native speed.  <a href="classIRArgoACBase.html#a9c7b38883cd1ab3d0905be103e8dd57e">More...</a><br /></td></tr>
<tr class="separator:a9c7b38883cd1ab3d0905be103e8dd57e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac533804d57a36243c1eb129bc335daa5"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ac533804d57a36243c1eb129bc335daa5">convertSwingV</a> (const <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> position)</td></tr>
<tr class="memdesc:ac533804d57a36243c1eb129bc335daa5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43" title="Common A/C settings for Vertical Swing.">stdAc::swingv_t</a> enum into it's native setting.  <a href="classIRArgoACBase.html#ac533804d57a36243c1eb129bc335daa5">More...</a><br /></td></tr>
<tr class="separator:ac533804d57a36243c1eb129bc335daa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e97d6060b0f70a9152478510806c111"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a6e97d6060b0f70a9152478510806c111">convertCommand</a> (const <a class="el" href="namespacestdAc.html#a9273f2effbd3b783862b82ae509fb832">stdAc::ac_command_t</a> command)</td></tr>
<tr class="memdesc:a6e97d6060b0f70a9152478510806c111"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#a9273f2effbd3b783862b82ae509fb832" title="Tyoe of A/C command (if the remote uses different codes for each)">stdAc::ac_command_t</a> enum into its native message type.  <a href="classIRArgoACBase.html#a6e97d6060b0f70a9152478510806c111">More...</a><br /></td></tr>
<tr class="separator:a6e97d6060b0f70a9152478510806c111"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aee519e81bf2f88b547a135a43f4479f3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#aee519e81bf2f88b547a135a43f4479f3">_stateReset</a> (ARGO_PROTOCOL_T *state, <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> messageType=<a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a>)</td></tr>
<tr class="separator:aee519e81bf2f88b547a135a43f4479f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1631b6fa19bd00925ad9074606a977"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#afa1631b6fa19bd00925ad9074606a977">stateReset</a> (<a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> messageType=<a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a>)</td></tr>
<tr class="memdesc:afa1631b6fa19bd00925ad9074606a977"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the internals of the object to a known good state.  <a href="classIRArgoACBase.html#afa1631b6fa19bd00925ad9074606a977">More...</a><br /></td></tr>
<tr class="separator:afa1631b6fa19bd00925ad9074606a977"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab281d942b5e2c5a6d593ca348c516811"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ab281d942b5e2c5a6d593ca348c516811">_checksum</a> (ARGO_PROTOCOL_T *state)</td></tr>
<tr class="separator:ab281d942b5e2c5a6d593ca348c516811"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4445c510ff1ac4960d5d2a94c53cd913"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a4445c510ff1ac4960d5d2a94c53cd913">checksum</a> (void)</td></tr>
<tr class="memdesc:a4445c510ff1ac4960d5d2a94c53cd913"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the checksum for the internal state.  <a href="classIRArgoACBase.html#a4445c510ff1ac4960d5d2a94c53cd913">More...</a><br /></td></tr>
<tr class="separator:a4445c510ff1ac4960d5d2a94c53cd913"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-methods"></a>
Static Protected Member Functions</h2></td></tr>
<tr class="memitem:acca35f466af9099e6dcb9f6ec80d915f"><td class="memItemLeft" align="right" valign="top">static uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#acca35f466af9099e6dcb9f6ec80d915f">getRawByteLength</a> (const ARGO_PROTOCOL_T &amp;raw, <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> messageTypeHint=<a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a>)</td></tr>
<tr class="separator:acca35f466af9099e6dcb9f6ec80d915f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a254d361c7f7db2b7a3e4414f40b4cdef"><td class="memItemLeft" align="right" valign="top">static uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a254d361c7f7db2b7a3e4414f40b4cdef">calcChecksum</a> (const uint8_t state[], const uint16_t length)</td></tr>
<tr class="memdesc:a254d361c7f7db2b7a3e4414f40b4cdef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the checksum for a given state (WREM-3).  <a href="classIRArgoACBase.html#a254d361c7f7db2b7a3e4414f40b4cdef">More...</a><br /></td></tr>
<tr class="separator:a254d361c7f7db2b7a3e4414f40b4cdef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60b341fad1690547b061b59a4daf73be"><td class="memItemLeft" align="right" valign="top">static uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a60b341fad1690547b061b59a4daf73be">getChecksum</a> (const uint8_t state[], const uint16_t length)</td></tr>
<tr class="memdesc:a60b341fad1690547b061b59a4daf73be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve the checksum value from transmitted state.  <a href="classIRArgoACBase.html#a60b341fad1690547b061b59a4daf73be">More...</a><br /></td></tr>
<tr class="separator:a60b341fad1690547b061b59a4daf73be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56a8e9c328a3e333f7d758e3a621f00f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a56a8e9c328a3e333f7d758e3a621f00f">toCommonMode</a> (const <a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a> mode)</td></tr>
<tr class="memdesc:a56a8e9c328a3e333f7d758e3a621f00f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a native mode into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent.  <a href="classIRArgoACBase.html#a56a8e9c328a3e333f7d758e3a621f00f">More...</a><br /></td></tr>
<tr class="separator:a56a8e9c328a3e333f7d758e3a621f00f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c21da5a106f21112b3392a497e08b37"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a3c21da5a106f21112b3392a497e08b37">toCommonFanSpeed</a> (const <a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a> speed)</td></tr>
<tr class="memdesc:a3c21da5a106f21112b3392a497e08b37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a native fan speed into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent.  <a href="classIRArgoACBase.html#a3c21da5a106f21112b3392a497e08b37">More...</a><br /></td></tr>
<tr class="separator:a3c21da5a106f21112b3392a497e08b37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8a108522b9ad322abab3dd1cbbc8746"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ae8a108522b9ad322abab3dd1cbbc8746">toCommonSwingV</a> (const uint8_t position)</td></tr>
<tr class="memdesc:ae8a108522b9ad322abab3dd1cbbc8746"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a native flap mode into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent (WREM3).  <a href="classIRArgoACBase.html#ae8a108522b9ad322abab3dd1cbbc8746">More...</a><br /></td></tr>
<tr class="separator:ae8a108522b9ad322abab3dd1cbbc8746"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3823e23304cfd3f7233c44be8d74dee1"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacestdAc.html#a9273f2effbd3b783862b82ae509fb832">stdAc::ac_command_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a3823e23304cfd3f7233c44be8d74dee1">toCommonCommand</a> (const <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> command)</td></tr>
<tr class="memdesc:a3823e23304cfd3f7233c44be8d74dee1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a native message type into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent.  <a href="classIRArgoACBase.html#a3823e23304cfd3f7233c44be8d74dee1">More...</a><br /></td></tr>
<tr class="separator:a3823e23304cfd3f7233c44be8d74dee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a99608e68d5614dd2119548fe6bcfb37b"><td class="memItemLeft" align="right" valign="top">ARGO_PROTOCOL_T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a99608e68d5614dd2119548fe6bcfb37b">_</a></td></tr>
<tr class="memdesc:a99608e68d5614dd2119548fe6bcfb37b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The raw protocol data.  <a href="classIRArgoACBase.html#a99608e68d5614dd2119548fe6bcfb37b">More...</a><br /></td></tr>
<tr class="separator:a99608e68d5614dd2119548fe6bcfb37b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fb15d8b77a20568730532ce39e7e50d"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a6fb15d8b77a20568730532ce39e7e50d">_length</a> = <a class="el" href="IRremoteESP8266_8h.html#a5f38a56eacd9964a8514cb57de287a45">kArgoStateLength</a></td></tr>
<tr class="separator:a6fb15d8b77a20568730532ce39e7e50d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bbc592b34e0da3ae6f39caf30ffd6ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a7bbc592b34e0da3ae6f39caf30ffd6ad">_messageType</a> = <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a></td></tr>
<tr class="separator:a7bbc592b34e0da3ae6f39caf30ffd6ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71ffd3dec22dc5b7e07cfdd75e85075f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIRsend.html">IRsend</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a71ffd3dec22dc5b7e07cfdd75e85075f">_irsend</a></td></tr>
<tr class="memdesc:a71ffd3dec22dc5b7e07cfdd75e85075f"><td class="mdescLeft">&#160;</td><td class="mdescRight">instance of the IR send class  <a href="classIRArgoACBase.html#a71ffd3dec22dc5b7e07cfdd75e85075f">More...</a><br /></td></tr>
<tr class="separator:a71ffd3dec22dc5b7e07cfdd75e85075f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="related"></a>
Related Functions</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>(Note that these are not member functions.) </p>
</td></tr>
<tr class="memitem:a95edec31f98c3571b957325755f69d73"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
<tr class="memitem:a95edec31f98c3571b957325755f69d73"><td class="memTemplItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a95edec31f98c3571b957325755f69d73">getRawByteLength</a> (const <a class="el" href="unionArgoProtocol.html">ArgoProtocol</a> &amp;, <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> messageType)</td></tr>
<tr class="memdesc:a95edec31f98c3571b957325755f69d73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get actual raw state byte length for the current state _param 1st param ignored: WREM-2 does not caryy type in payload, allegedly.  <a href="classIRArgoACBase.html#a95edec31f98c3571b957325755f69d73">More...</a><br /></td></tr>
<tr class="separator:a95edec31f98c3571b957325755f69d73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0b89065a755a7b047b8eb9a0925dced"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
<tr class="memitem:ac0b89065a755a7b047b8eb9a0925dced"><td class="memTemplItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#ac0b89065a755a7b047b8eb9a0925dced">getRawByteLength</a> (const <a class="el" href="unionArgoProtocolWREM3.html">ArgoProtocolWREM3</a> &amp;raw, <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>)</td></tr>
<tr class="memdesc:ac0b89065a755a7b047b8eb9a0925dced"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get actual raw state byte length for the current state.  <a href="classIRArgoACBase.html#ac0b89065a755a7b047b8eb9a0925dced">More...</a><br /></td></tr>
<tr class="separator:ac0b89065a755a7b047b8eb9a0925dced"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90e543d81f5b3e9d1b41b39bb764c01f"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
<tr class="memitem:a90e543d81f5b3e9d1b41b39bb764c01f"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a90e543d81f5b3e9d1b41b39bb764c01f">_checksum</a> (<a class="el" href="unionArgoProtocol.html">ArgoProtocol</a> *state)</td></tr>
<tr class="memdesc:a90e543d81f5b3e9d1b41b39bb764c01f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the checksum for a given state (WREM2).  <a href="classIRArgoACBase.html#a90e543d81f5b3e9d1b41b39bb764c01f">More...</a><br /></td></tr>
<tr class="separator:a90e543d81f5b3e9d1b41b39bb764c01f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea9609604cbd77bdfc86a26d2b450ab0"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
<tr class="memitem:aea9609604cbd77bdfc86a26d2b450ab0"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#aea9609604cbd77bdfc86a26d2b450ab0">_checksum</a> (<a class="el" href="unionArgoProtocolWREM3.html">ArgoProtocolWREM3</a> *state)</td></tr>
<tr class="memdesc:aea9609604cbd77bdfc86a26d2b450ab0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the checksum for a given state (WREM3).  <a href="classIRArgoACBase.html#aea9609604cbd77bdfc86a26d2b450ab0">More...</a><br /></td></tr>
<tr class="separator:aea9609604cbd77bdfc86a26d2b450ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a557693902e6c380ac5c7fc31eeb64e79"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
<tr class="memitem:a557693902e6c380ac5c7fc31eeb64e79"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a557693902e6c380ac5c7fc31eeb64e79">_stateReset</a> (<a class="el" href="unionArgoProtocol.html">ArgoProtocol</a> *state, <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>)</td></tr>
<tr class="memdesc:a557693902e6c380ac5c7fc31eeb64e79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the given state to a known good state.  <a href="classIRArgoACBase.html#a557693902e6c380ac5c7fc31eeb64e79">More...</a><br /></td></tr>
<tr class="separator:a557693902e6c380ac5c7fc31eeb64e79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a203b3dab94757444297b3102b3e19c15"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
<tr class="memitem:a203b3dab94757444297b3102b3e19c15"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classIRArgoACBase.html#a203b3dab94757444297b3102b3e19c15">_stateReset</a> (<a class="el" href="unionArgoProtocolWREM3.html">ArgoProtocolWREM3</a> *state, <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> messageType)</td></tr>
<tr class="memdesc:a203b3dab94757444297b3102b3e19c15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the given state to a known good state.  <a href="classIRArgoACBase.html#a203b3dab94757444297b3102b3e19c15">More...</a><br /></td></tr>
<tr class="separator:a203b3dab94757444297b3102b3e19c15"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename ARGO_PROTOCOL_T&gt;<br />
class IRArgoACBase&lt; ARGO_PROTOCOL_T &gt;</h3>

<p>Base class for handling <em>common</em> support for Argo remote protocols (functionality is shared across WREM-2 and WREM-3 IR protocols) </p>
<dl class="section note"><dt>Note</dt><dd>This class uses static polymorphism and full template specializations when required, to avoid a performance penalty of doing v-table lookup. 2 instantiations are forced in impl. file: for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> and <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> </dd>
<dd>
This class is abstract (though does not declare a pure-virtual fn. for abovementioned reasons), and instead declares protected c-tor </dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
  <table class="tparams">
    <tr><td class="paramname">ARGO_PROTOCOL_T</td><td>The Raw device protocol/message used </td></tr>
  </table>
  </dd>
</dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a44f218a7ce7829c9e3edffa5b3e0daf2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44f218a7ce7829c9e3edffa5b3e0daf2">&#9670;&nbsp;</a></span>IRArgoACBase()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::<a class="el" href="classIRArgoACBase.html">IRArgoACBase</a> </td>
          <td>(</td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>pin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>inverted</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>use_modulation</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Class constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pin</td><td>GPIO to be used when sending. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">inverted</td><td>Is the output signal to be inverted? </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">use_modulation</td><td>Is frequency modulation to be used? </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ab281d942b5e2c5a6d593ca348c516811"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab281d942b5e2c5a6d593ca348c516811">&#9670;&nbsp;</a></span>_checksum()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::_checksum </td>
          <td>(</td>
          <td class="paramtype">ARGO_PROTOCOL_T *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="aee519e81bf2f88b547a135a43f4479f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee519e81bf2f88b547a135a43f4479f3">&#9670;&nbsp;</a></span>_stateReset()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::_stateReset </td>
          <td>(</td>
          <td class="paramtype">ARGO_PROTOCOL_T *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>messageType</em> = <code><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="af861bd552b45798ddb4a248aa83809a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af861bd552b45798ddb4a248aa83809a2">&#9670;&nbsp;</a></span>begin()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::begin </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set up hardware to be able to send a message. </p>

</div>
</div>
<a id="a254d361c7f7db2b7a3e4414f40b4cdef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a254d361c7f7db2b7a3e4414f40b4cdef">&#9670;&nbsp;</a></span>calcChecksum()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t calcChecksum </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>state</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Calculate the checksum for a given state (WREM-3). </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>The array to calculate the checksum for. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>The size of the state. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The 8-bit calculated result. &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="ad2d075d5088985078433dbbef25c996c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2d075d5088985078433dbbef25c996c">&#9670;&nbsp;</a></span>calibrate()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int8_t <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::calibrate </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Run the calibration to calculate uSec timing offsets for this platform. </p>
<dl class="section return"><dt>Returns</dt><dd>The uSec timing offset needed per modulation of the IR Led. </dd></dl>
<dl class="section note"><dt>Note</dt><dd>This will produce a 65ms IR signal pulse at 38kHz. Only ever needs to be run once per object instantiation, if at all. </dd></dl>

</div>
</div>
<a id="a4445c510ff1ac4960d5d2a94c53cd913"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4445c510ff1ac4960d5d2a94c53cd913">&#9670;&nbsp;</a></span>checksum()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::checksum </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Update the checksum for the internal state. </p>

</div>
</div>
<a id="a6e97d6060b0f70a9152478510806c111"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e97d6060b0f70a9152478510806c111">&#9670;&nbsp;</a></span>convertCommand()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::convertCommand </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespacestdAc.html#a9273f2effbd3b783862b82ae509fb832">stdAc::ac_command_t</a>&#160;</td>
          <td class="paramname"><em>command</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#a9273f2effbd3b783862b82ae509fb832" title="Tyoe of A/C command (if the remote uses different codes for each)">stdAc::ac_command_t</a> enum into its native message type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">command</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivalent of the enum. </dd></dl>

</div>
</div>
<a id="a9c7b38883cd1ab3d0905be103e8dd57e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c7b38883cd1ab3d0905be103e8dd57e">&#9670;&nbsp;</a></span>convertFan()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::convertFan </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a>&#160;</td>
          <td class="paramname"><em>speed</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383" title="Common A/C settings for Fan Speeds.">stdAc::fanspeed_t</a> enum into it's native speed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">speed</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivalent of the enum. </dd></dl>

</div>
</div>
<a id="a7a00b8a47758ab89a5d540e7ee089bef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a00b8a47758ab89a5d540e7ee089bef">&#9670;&nbsp;</a></span>convertMode()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::convertMode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f" title="Common A/C settings for A/C operating modes.">stdAc::opmode_t</a> enum into its native mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivalent of the enum. </dd></dl>

</div>
</div>
<a id="ac533804d57a36243c1eb129bc335daa5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac533804d57a36243c1eb129bc335daa5">&#9670;&nbsp;</a></span>convertSwingV()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::convertSwingV </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a>&#160;</td>
          <td class="paramname"><em>position</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43" title="Common A/C settings for Vertical Swing.">stdAc::swingv_t</a> enum into it's native setting. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">position</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivalent of the enum. </dd></dl>

</div>
</div>
<a id="a60b341fad1690547b061b59a4daf73be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60b341fad1690547b061b59a4daf73be">&#9670;&nbsp;</a></span>getChecksum()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t getChecksum </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>state</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Retrieve the checksum value from transmitted state. </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> type and while it semantically belongs to <code>IrArgoAC</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>Raw state </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">length</td><td>Length of <code>state</code> in bytes </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Checksum value (8-bit) &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="aa5e89af1ed627b5b937152d797a7dbe0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5e89af1ed627b5b937152d797a7dbe0">&#9670;&nbsp;</a></span>getFanEx()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a> getFanEx </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p><code>-Ex</code> for backw. compat w/ <code><a class="el" href="classIRArgoAC.html" title="Supports Argo A/C SAC-WREM2 IR remote protocol.">IRArgoAC</a></code> </p>
<p>Get the current fan mode setting as a strongly typed value (WREM3).</p>
<p>Get the current fan mode setting as a strongly typed value (WREM2).</p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> type and while it semantically belongs to <code>IrArgoAC</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The current fan mode. &lt;ARGO_PROTOCOL_T&gt;</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The current fan mode. &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="ad5465ccf35143d0898ed837d39b3fde6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5465ccf35143d0898ed837d39b3fde6">&#9670;&nbsp;</a></span>getFlapEx()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getFlapEx </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p><code>-Ex</code> for backw. compat w/ <code><a class="el" href="classIRArgoAC.html" title="Supports Argo A/C SAC-WREM2 IR remote protocol.">IRArgoAC</a></code> </p>
<p>Get Flap (VSwing) value as a strongly-typed value.</p>
<dl class="section note"><dt>Note</dt><dd>This <code><a class="el" href="classIRArgoACBase.html#ad5465ccf35143d0898ed837d39b3fde6" title="-Ex for backw. compat w/ IRArgoAC">getFlapEx()</a></code> method has been introduced to be able to retain old implementation of <code>getFlap()</code> for <code>IRArgoAc</code> which used uint8_t </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>Flap setting </dd></dl>

</div>
</div>
<a id="a201b807436cfd2bf7d5d5818987117bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a201b807436cfd2bf7d5d5818987117bd">&#9670;&nbsp;</a></span>getiFeel()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getiFeel </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the status of iFeel mode. </p>
<dl class="section return"><dt>Returns</dt><dd>true if on, false if off. </dd></dl>

</div>
</div>
<a id="a0706c04b2e52a7fd848a26edc23122d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0706c04b2e52a7fd848a26edc23122d6">&#9670;&nbsp;</a></span>getMax()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getMax </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Is the Max (i.e. Turbo) setting on? </p>
<dl class="section return"><dt>Returns</dt><dd>The current value. </dd></dl>

</div>
</div>
<a id="a59c0438143973eee8649453fe4f04413"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59c0438143973eee8649453fe4f04413">&#9670;&nbsp;</a></span>getMessageType() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> getMessageType </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>state</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get message type from raw WREM-3 data. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">state</td><td>The raw IR data </td></tr>
    <tr><td class="paramname">length</td><td>Length of <code>state</code> (in byte) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>IR message type </dd></dl>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="ad4bcb7b05cfbfe7f86a71dbc2fe26b12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4bcb7b05cfbfe7f86a71dbc2fe26b12">&#9670;&nbsp;</a></span>getMessageType() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getMessageType </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the message type. </p>
<dl class="section return"><dt>Returns</dt><dd>Message type currently set </dd></dl>

</div>
</div>
<a id="a5b3a48dd4ebaef8ba73b300893213cf7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b3a48dd4ebaef8ba73b300893213cf7">&#9670;&nbsp;</a></span>getModeEx()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a> getModeEx </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p><code>-Ex</code> for backw. compat w/ <code><a class="el" href="classIRArgoAC.html" title="Supports Argo A/C SAC-WREM2 IR remote protocol.">IRArgoAC</a></code> </p>
<p>Get the current operation mode setting.</p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> type and while it semantically belongs to <code>IrArgoAC</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The current operation mode. </dd></dl>
<dl class="section note"><dt>Note</dt><dd>This <code><a class="el" href="classIRArgoACBase.html#a5b3a48dd4ebaef8ba73b300893213cf7" title="-Ex for backw. compat w/ IRArgoAC">getModeEx()</a></code> method has been introduced to be able to retain old implementation of <code>getMode()</code> for <code>IRArgoAc</code> which used uint8_t &lt;ARGO_PROTOCOL_T&gt;</dd>
<dd>
This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function. </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The current operation mode. </dd></dl>
<dl class="section note"><dt>Note</dt><dd>This <code><a class="el" href="classIRArgoACBase.html#a5b3a48dd4ebaef8ba73b300893213cf7" title="-Ex for backw. compat w/ IRArgoAC">getModeEx()</a></code> method has been introduced to be able to retain old implementation of <code>getMode()</code> for <code>IRArgoAc</code> which used uint8_t &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="a9ea1f41b98144411d266c6b35cbda3c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ea1f41b98144411d266c6b35cbda3c3">&#9670;&nbsp;</a></span>getNight()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getNight </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the status of Night mode. i.e. Sleep. </p>
<dl class="section return"><dt>Returns</dt><dd>true if on, false if off. </dd></dl>

</div>
</div>
<a id="a77bd8c330ca0c5e9f0891989eca54b0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77bd8c330ca0c5e9f0891989eca54b0d">&#9670;&nbsp;</a></span>getPower()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool getPower </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the power setting from the internal state. </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> type and while it semantically belongs to <code>IrArgoAC</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>A boolean indicating the power setting. &lt;ARGO_PROTOCOL_T&gt;</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>A boolean indicating the power setting. &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="af9cd60a4c59cb912af796a0dd9e6ca2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9cd60a4c59cb912af796a0dd9e6ca2e">&#9670;&nbsp;</a></span>getRaw()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">uint8_t * <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getRaw </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the raw state of the object, suitable to be sent with the appropriate <a class="el" href="classIRsend.html" title="Class for sending all basic IR protocols.">IRsend</a> object method. </p>
<dl class="section return"><dt>Returns</dt><dd>A PTR to the internal state. </dd></dl>

</div>
</div>
<a id="a6b975f16e1b2a11f26ba2671d69a0e78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b975f16e1b2a11f26ba2671d69a0e78">&#9670;&nbsp;</a></span>getRawByteLength() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">uint16_t <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getRawByteLength</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get actual raw state byte length for the current state. </p>
<dl class="section return"><dt>Returns</dt><dd>Actual length of state (in bytes) </dd></dl>

</div>
</div>
<a id="acca35f466af9099e6dcb9f6ec80d915f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acca35f466af9099e6dcb9f6ec80d915f">&#9670;&nbsp;</a></span>getRawByteLength() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint16_t <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::getRawByteLength </td>
          <td>(</td>
          <td class="paramtype">const ARGO_PROTOCOL_T &amp;&#160;</td>
          <td class="paramname"><em>raw</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>messageTypeHint</em> = <code><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a2debcb1941be483509774d77c0899d90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2debcb1941be483509774d77c0899d90">&#9670;&nbsp;</a></span>getSensorTemp()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">uint8_t <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getSensorTemp </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the currently stored value for the room temperature setting. </p>
<dl class="section note"><dt>Note</dt><dd>Depending on message type - this will get <code>sensor</code> or <code>roomTemp</code> value </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The current setting for the room temp. in degrees celsius. </dd></dl>

</div>
</div>
<a id="a7f8cff3302add84acb8fb84f53f9c7c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f8cff3302add84acb8fb84f53f9c7c3">&#9670;&nbsp;</a></span>getStateLengthForIrMsgType()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t getStateLengthForIrMsgType </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>type</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get byte length of raw WREM-3 message based on IR cmd type. </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">type</td><td>The type of IR command </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Byte length of state command &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="a0ff5e543da48492ce58bf48e70b57179"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ff5e543da48492ce58bf48e70b57179">&#9670;&nbsp;</a></span>getTemp()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">uint8_t <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::getTemp </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the current temperature setting. </p>
<dl class="section return"><dt>Returns</dt><dd>The current setting for temp. in degrees celsius. </dd></dl>

</div>
</div>
<a id="a66ba764117f13d6566d2fca415388ef6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66ba764117f13d6566d2fca415388ef6">&#9670;&nbsp;</a></span>off()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::off </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the internal state to have the power off. </p>

</div>
</div>
<a id="ac008199e29e574b5a6b9150dc7706361"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac008199e29e574b5a6b9150dc7706361">&#9670;&nbsp;</a></span>on()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::on </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the internal state to have the power on. </p>

</div>
</div>
<a id="a9b7e72fd0c1624a44ad48d7fc612a54e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b7e72fd0c1624a44ad48d7fc612a54e">&#9670;&nbsp;</a></span>send()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::send </td>
          <td>(</td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>repeat</em> = <code><a class="el" href="IRremoteESP8266_8h.html#a9a2190c526885753c676db666e48b764">kArgoDefaultRepeat</a></code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Send the current internal state as an IR message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">repeat</td><td>Nr. of times the message will be repeated. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9fc557551120c38319025182aa6139eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fc557551120c38319025182aa6139eb">&#9670;&nbsp;</a></span>setFan()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void setFan </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a>&#160;</td>
          <td class="paramname"><em>fan</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the desired fan mode (WREM3). </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">fan</td><td>The desired fan speed. &lt;ARGO_PROTOCOL_T&gt; </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a928291cf92822173002d481726d4a6b9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a928291cf92822173002d481726d4a6b9">&#9670;&nbsp;</a></span>setFanEx()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::setFanEx </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a>&#160;</td>
          <td class="paramname"><em>fan</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="ad9486ce2e104b66a784529fb516d7fee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9486ce2e104b66a784529fb516d7fee">&#9670;&nbsp;</a></span>setFlap()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setFlap </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a>&#160;</td>
          <td class="paramname"><em>flap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the desired flap mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">flap</td><td>The desired flap mode. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa926073e0373b432371e8565816a30f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa926073e0373b432371e8565816a30f9">&#9670;&nbsp;</a></span>setFlapEx()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::setFlapEx </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#a65130e0edbf25ecde961ccc38fe67719">argoFlap_t</a>&#160;</td>
          <td class="paramname"><em>flap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a44741b2f491d9ff5e883debb01c363ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44741b2f491d9ff5e883debb01c363ce">&#9670;&nbsp;</a></span>setiFeel()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setiFeel </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Turn on/off the iFeel mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>The desired setting. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afb9d070353c5236ebffed7a05aa60dcc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb9d070353c5236ebffed7a05aa60dcc">&#9670;&nbsp;</a></span>setMax()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setMax </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Control the current Max setting. (i.e. Turbo) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>The desired setting. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a066c781578344b3ff41cc7a50a7e1a62"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a066c781578344b3ff41cc7a50a7e1a62">&#9670;&nbsp;</a></span>setMessageType()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setMessageType </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>msgType</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the message type of the next command (setting this resets state) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">msgType</td><td>The message type to set </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a8eee57c7fe2ecea762a811694b014510"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8eee57c7fe2ecea762a811694b014510">&#9670;&nbsp;</a></span>setMode()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void setMode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the desired operation mode. </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>The desired operation mode. &lt;ARGO_PROTOCOL_T&gt; </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5d514604a73f185dcac677515e4b152e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d514604a73f185dcac677515e4b152e">&#9670;&nbsp;</a></span>setModeEx()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::setModeEx </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="aac59ad816a7c77d9c6c6a30ee809ce25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac59ad816a7c77d9c6c6a30ee809ce25">&#9670;&nbsp;</a></span>setNight()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setNight </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Turn on/off the Night mode. i.e. Sleep. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>The desired setting. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a38a3fa539e464fa50a0973d1ad7ed861"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a38a3fa539e464fa50a0973d1ad7ed861">&#9670;&nbsp;</a></span>setPower()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void setPower </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the internal state to have the desired power. </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>The desired power state. &lt;ARGO_PROTOCOL_T&gt; </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a6f372befde385c3e286488a7803a75e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f372befde385c3e286488a7803a75e4">&#9670;&nbsp;</a></span>setRaw()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setRaw </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>state</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the raw state of the object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>The raw state from the native IR message. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>The length of raw state in bytes. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="abff06405b628cf673f59f1e6826923cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abff06405b628cf673f59f1e6826923cc">&#9670;&nbsp;</a></span>setSensorTemp()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setSensorTemp </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>degrees</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the value for the current room temperature. </p>
<dl class="section note"><dt>Note</dt><dd>Depending on message type - this will set <code>sensor</code> or <code>roomTemp</code> value </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">degrees</td><td>The temperature in degrees celsius. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a325f5ef55475147ce4c65bea7da9b8ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a325f5ef55475147ce4c65bea7da9b8ce">&#9670;&nbsp;</a></span>setTemp()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::setTemp </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>degrees</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the temperature. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">degrees</td><td>The temperature in degrees celsius. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Sending 0 equals +4 </dd></dl>

</div>
</div>
<a id="afa1631b6fa19bd00925ad9074606a977"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa1631b6fa19bd00925ad9074606a977">&#9670;&nbsp;</a></span>stateReset()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::stateReset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>messageType</em> = <code><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a></code></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reset the internals of the object to a known good state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">messageType</td><td>Type of message to reset the state for </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3823e23304cfd3f7233c44be8d74dee1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3823e23304cfd3f7233c44be8d74dee1">&#9670;&nbsp;</a></span>toCommonCommand()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacestdAc.html#a9273f2effbd3b783862b82ae509fb832">stdAc::ac_command_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::toCommonCommand </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>command</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a native message type into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">command</td><td>The native setting to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent of the native setting. </dd></dl>

</div>
</div>
<a id="a3c21da5a106f21112b3392a497e08b37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c21da5a106f21112b3392a497e08b37">&#9670;&nbsp;</a></span>toCommonFanSpeed()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::toCommonFanSpeed </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#aa06fa023aaa4ffd1cce16ddc08ee1b58">argoFan_t</a>&#160;</td>
          <td class="paramname"><em>speed</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a native fan speed into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">speed</td><td>The native setting to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent of the native setting. </dd></dl>

</div>
</div>
<a id="a56a8e9c328a3e333f7d758e3a621f00f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56a8e9c328a3e333f7d758e3a621f00f">&#9670;&nbsp;</a></span>toCommonMode()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::toCommonMode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="ir__Argo_8h.html#ac5ec3c5effcb350b776669400d29809c">argoMode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a native mode into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>The native setting to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent of the native setting. </dd></dl>

</div>
</div>
<a id="ae8a108522b9ad322abab3dd1cbbc8746"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae8a108522b9ad322abab3dd1cbbc8746">&#9670;&nbsp;</a></span>toCommonSwingV()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> toCommonSwingV </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>position</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a native flap mode into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent (WREM3). </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">position</td><td>The native setting to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivalent of the native setting. &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="a75a13ff6c6c6ad22283d03dcf0151130"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75a13ff6c6c6ad22283d03dcf0151130">&#9670;&nbsp;</a></span>validChecksum()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; T &gt;::validChecksum </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>state</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Verify the checksum is valid for a given state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>The array to verify the checksum of. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>The size of the state. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A boolean indicating if it's checksum is valid. </dd></dl>

</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a id="a90e543d81f5b3e9d1b41b39bb764c01f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90e543d81f5b3e9d1b41b39bb764c01f">&#9670;&nbsp;</a></span>_checksum() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void _checksum </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionArgoProtocol.html">ArgoProtocol</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Update the checksum for a given state (WREM2). </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> type and while it semantically belongs to <code>IrArgoAC</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>This impl does not support short message format (iFeel) </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to a binary representation of the A/C state. &lt;ARGO_PROTOCOL_T&gt; </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aea9609604cbd77bdfc86a26d2b450ab0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea9609604cbd77bdfc86a26d2b450ab0">&#9670;&nbsp;</a></span>_checksum() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void _checksum </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionArgoProtocolWREM3.html">ArgoProtocolWREM3</a> *&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Update the checksum for a given state (WREM3). </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to a binary representation of the A/C state. &lt;ARGO_PROTOCOL_T&gt; </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a557693902e6c380ac5c7fc31eeb64e79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a557693902e6c380ac5c7fc31eeb64e79">&#9670;&nbsp;</a></span>_stateReset() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void _stateReset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionArgoProtocol.html">ArgoProtocol</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reset the given state to a known good state. </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> type and while it semantically belongs to <code>IrArgoAC</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to a binary representation of the A/C state. _param 2nd param unused (always resets to AC_CONTROL state) &lt;ARGO_PROTOCOL_T&gt; </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a203b3dab94757444297b3102b3e19c15"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a203b3dab94757444297b3102b3e19c15">&#9670;&nbsp;</a></span>_stateReset() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void _stateReset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="unionArgoProtocolWREM3.html">ArgoProtocolWREM3</a> *&#160;</td>
          <td class="paramname"><em>state</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>messageType</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reset the given state to a known good state. </p>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">state</td><td>Pointer to a binary representation of the A/C state. </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">messageType</td><td>Type of message to reset the state for &lt;ARGO_PROTOCOL_T&gt; </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a95edec31f98c3571b957325755f69d73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95edec31f98c3571b957325755f69d73">&#9670;&nbsp;</a></span>getRawByteLength() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t getRawByteLength </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="unionArgoProtocol.html">ArgoProtocol</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname"><em>messageType</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get actual raw state byte length for the current state _param 1st param ignored: WREM-2 does not caryy type in payload, allegedly. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">messageType</td><td>Type of message the state is carrying </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Actual length of state (in bytes) </dd></dl>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocol.html" title="Native representation of a Argo A/C message for WREM-2 remote.">ArgoProtocol</a></code> type and while it semantically belongs to <code>IrArgoAC</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<a id="ac0b89065a755a7b047b8eb9a0925dced"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0b89065a755a7b047b8eb9a0925dced">&#9670;&nbsp;</a></span>getRawByteLength() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t getRawByteLength </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="unionArgoProtocolWREM3.html">ArgoProtocolWREM3</a> &amp;&#160;</td>
          <td class="paramname"><em>raw</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a>&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get actual raw state byte length for the current state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">raw</td><td>The raw state _param 2nd param ignored (1st byte of <code>raw</code> is sufficient to get len) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Actual length of state (in bytes) </dd></dl>
<dl class="section note"><dt>Note</dt><dd>This is a full specialization for <code><a class="el" href="unionArgoProtocolWREM3.html" title="Native representation of A/C IR message for WREM-3 remote.">ArgoProtocolWREM3</a></code> type and while it semantically belongs to <code>IrArgoAC_WREM3</code> class impl., it has <em>not</em> been pushed there, to avoid having to use a virtual function &lt;ARGO_PROTOCOL_T&gt; </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a99608e68d5614dd2119548fe6bcfb37b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99608e68d5614dd2119548fe6bcfb37b">&#9670;&nbsp;</a></span>_</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ARGO_PROTOCOL_T <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The raw protocol data. </p>

</div>
</div>
<a id="a71ffd3dec22dc5b7e07cfdd75e85075f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71ffd3dec22dc5b7e07cfdd75e85075f">&#9670;&nbsp;</a></span>_irsend</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIRsend.html">IRsend</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::_irsend</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>instance of the IR send class </p>

</div>
</div>
<a id="a6fb15d8b77a20568730532ce39e7e50d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fb15d8b77a20568730532ce39e7e50d">&#9670;&nbsp;</a></span>_length</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::_length = <a class="el" href="IRremoteESP8266_8h.html#a5f38a56eacd9964a8514cb57de287a45">kArgoStateLength</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a7bbc592b34e0da3ae6f39caf30ffd6ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bbc592b34e0da3ae6f39caf30ffd6ad">&#9670;&nbsp;</a></span>_messageType</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ARGO_PROTOCOL_T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fca">argoIrMessageType_t</a> <a class="el" href="classIRArgoACBase.html">IRArgoACBase</a>&lt; ARGO_PROTOCOL_T &gt;::_messageType = <a class="el" href="ir__Argo_8h.html#af6d63b1d2f511ebd1a1358e497ed1fcaa9915c819a5e8b3546f86085cc0fe7590">argoIrMessageType_t::AC_CONTROL</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/<a class="el" href="ir__Argo_8h_source.html">ir_Argo.h</a></li>
<li>src/<a class="el" href="ir__Argo_8cpp.html">ir_Argo.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
